# 定义阶乘函数
def factorial(n):
    if n == 0 or n == 1:
        return 1
    else:
        return n * factorial(n - 1)

# 计算排列数 P(n, r) = n! / (n - r)!
def permutation(n, r):
    return factorial(n) // factorial(n - r)

# 计算组合数 C(n, r) = n! / (r! * (n - r)!)
def combination(n, r):
    return factorial(n) // (factorial(r) * factorial(n - r))

# 接收用户输入
n = int(input("请输入 n 的值: "))
r = int(input("请输入 r 的值: "))

# 判断输入是否有效
if r > n:
    print("无效输入")
else:
    # 计算并输出结果
    print(f"排列数 P({n}, {r}) = {permutation(n, r)}")
    print(f"组合数 C({n}, {r}) = {combination(n, r)}")